package com.authine.cloudpivot.ext.dto.transfer;

import io.swagger.annotations.ApiModel;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * 会员采购订单表
 */
@Data
@Schema(description = "MemberPurchaseOrderDto")
@ApiModel("会员采购订单表")
public class MemberPurchaseOrderDto {
    @Schema(description = "会员采购订单ID")
    private String id;
    @Schema(description = "会员采购订单ID集合")
    private List<String> ids;
    @Schema(description = "采购单PO单号")
    private String po_code;
    @Schema(description = "平台订单号")
    private String transfer_order_ids;
    @Schema(description = "供应商id")
    private String vendor_id;
    @Schema(description = "供应商名称")
    private String vendor_name;
    @Schema(description = "发票税率")
    private BigDecimal invoice_rate;
    @Schema(description = "发票类型")
    private String invoice_type;
    @Schema(description = "备注")
    private String memo;
    @Schema(description = "采购订单状态")
    private String member_purchase_order_status;
    @Schema(description = "销售总价含税")
    private BigDecimal sale_amount;
    @Schema(description = "销售总价未税")
    private BigDecimal pre_sale_amount;
    @Schema(description = "采购总价")
    private BigDecimal purchase_amount;
    @Schema(description = "采购总价(未税)")
    private BigDecimal pre_purchase_amount;
    @Schema(description = "总毛利")
    private BigDecimal gross_profit_margin;
    @Schema(description = "需求日期")
    private String requested_date;
    @Schema(description = "未付金额")
    private BigDecimal no_payment_amount;
    @Schema(description = "收票金额")
    private BigDecimal invoice_price;
    @Schema(description = "收票状态")
    private String invoice_status;
    @Schema(description = "采购单类型(false:采购单,true:退货单)")
    private Boolean is_rp;
    @Schema(description = "退货单关联采购单id")
    private String relation_purchase_id;
    @Schema(description = "云平台订单号")
    private String cloud_order_ids;
    @Schema(description = "采购员")
    private String buyer;
    @Schema(description = "合同是否已发")
    private Boolean contract_or_sent;
    @Schema(description = "淘宝账号id")
    private String pay_account_id;
    @Schema(description = "是否存在驳回的付款单")
    private Boolean is_return_payment;
    @Schema(description = "采购员id")
    private String buyer_id;
    @Schema(description = "退货原因")
    private String refund_reason;
    @Schema(description = "客户名称列表")
    private String customer_name;
    @Schema(description = "不再付款")
    private Boolean no_more_payment;
    @Schema(description = "审核人名称")
    private String approve_user_name;
    @Schema(description = "平台名称")
    private String platform_name;
    @Schema(description = "付款方式名称")
    private String payment_name;
//    @Schema(description = "审核时间")
//    private String approve_time;
    @Schema(description = "淘宝账号")
    private String pay_account_name;
    @Schema(description = "付款方式")
    private String payment_id;
    @Schema(description = "账期")
    private Integer account_period;
    @Schema(description = "转采时间集合", pattern = "yyyy-MM-dd HH:mm:ss")
    private List<String> createdTime;
    @Schema(description = "审核时间集合", pattern = "yyyy-MM-dd HH:mm:ss")
    private List<String> approve_time;
    @Schema(description = "pageIndex")
    private Integer pageIndex;
    @Schema(description = "pageSize")
    private Integer pageSize;
    @Schema(description = "会员采购订单商品集合")
    private List<MemberPurchaseOrderGoodsDto> memberPurchaseOrderGoods;
}
